#pragma once
#include <string>
#include <functional>
#include <thread>

// MJPEG推流Web服务器
class WebMJPEGServer {
public:
    WebMJPEGServer(int port = 8080);
    ~WebMJPEGServer();
    // 设置帧获取回调：返回最新JPEG数据（如lambda: std::vector<uint8_t>）
    void setFrameProvider(std::function<std::vector<uint8_t>()> provider);
    // 启动/停止服务
    void start();
    void stop();
    bool isRunning() const;
private:
    struct Impl;
    Impl* impl_;
};
